﻿using System;

namespace HeerLauncherCoreLibrary
{
    public class LauncherAssemblyInfo
    {
        public LauncherPlayerInfo launcherPlayerInfo;
        public LauncherJavaInfo launcherJavaInfo;
        public LauncherGameInfo launcherGameInfo;
        public LauncherInfo launcherInfo;

        public LauncherAssemblyInfo(LauncherPlayerInfo p, LauncherJavaInfo j, LauncherGameInfo g, LauncherInfo l)
        {
            launcherPlayerInfo = p;
            launcherJavaInfo = j;
            launcherGameInfo = g;
            launcherInfo = l;
        }
    }

    public class LauncherPlayerInfo
    {
        public string playerName { get; set; }
        public string uuid { get; set; }
        public string token { get; set; }
        public string tokencookie { get; set; }

        public LauncherPlayerInfo()
        {
        }

        public LauncherPlayerInfo(string playerName)
        {
            this.playerName = playerName;
            uuid = Guid.NewGuid().ToString().Replace("-", "");
            token = Guid.NewGuid().ToString().Replace("-", "");
        }
    }

    public class LauncherJavaInfo
    {
        public int memory { get; set; }
        public string javaPath { get; set; }
        public string prefix { get; set; }
        public string suffix { get; set; }
        public string jvm { get; set; }

        public LauncherJavaInfo(int memory, string javaPath)
        {
            this.memory = memory;
            this.javaPath = javaPath;
        }
    }

    public class LauncherGameInfo
    {
        /// <summary>
        /// 右下角那行字
        /// </summary>
        public string exText { get; set; }

        public string ip { get; set; }
        public string height { get; set; }
        public string weight { get; set; }
        public string logPath { get; set; }

        public LauncherGameInfo()
        {
            exText = "HLC";
            ip = "";
            height = "";
            weight = "";
            logPath = "";
        }
    }

    public class LauncherInfo
    {
        public string LauncherName { get; set; }
        public string LauncherVersion { get; set; }

        public LauncherInfo(string LauncherName, string LauncherVersion)
        {
            this.LauncherName = LauncherName;
            this.LauncherVersion = LauncherVersion;
        }

        public LauncherInfo()
        {
            LauncherName = "HLC";
            LauncherVersion = "1.0.0";
        }
    }
}